package com.shyt.dao;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

@Data
@TableName(value = "sys_permission", schema = "qxglxt")
public class SysPermissionVo {


    private static final long serialVersionUID = 1L;
    /**
     *   * 权限编号
     *   
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     *   * 权限名称
     *   
     */
    private String label;
    /**
     *   * 父权限ID
     *   
     */
    private Long parentId = 0l;
    /**
     *   * 父权限名称
     *   
     */
    private String parentName;
    /**
     *   * 授权标识符
     *   
     */
    private String code;
    /**
     *   * 路由地址
     *   
     */
    private String path;
    /**
     *   * 路由名称
     *   
     */
    private String name;
    /**
     *   * 授权路径
     *   
     */
    private String url;
    /**
     *   * 权限类型(0-目录 1-菜单 2-按钮)
     *   
     */
    private Integer type;
    /**
     *   * 图标
     *   
     */
    private String icon;
    /**
     *   * 创建时间
     *   
     */
    private String createTime;

    /**
     *   * 修改时间
     *   
     */
    private String updateTime;
    /**
     *   * 备注
     *   
     */
    private String remark;
    /**
     *   * 是否删除(0-未删除，1-已删除)
     *   
     */
    private Integer isDelete;
    /**
     *   * 排序
     *   
     */
    private Integer orderNum;


    /**
     * 子菜单列表
     */
    //属性值为null不进行序列化操作
    @TableField(exist = false)
    private List<SysPermissionVo> children = new ArrayList<SysPermissionVo>();
    /**
     * 用于前端判断是菜单、目录或按钮
     */
    @TableField(exist = false)
    private String value;
    /**
     * 是否展开
     */
    @TableField(exist = false)
    private Boolean open;

}
